using Admin2025.Application.Dtos;

namespace Admin2025.Application.IServices;

public interface IRoleManagementService
{
  Task<bool> AssignRoleToUserAsync(Guid userId, Guid roleId);
  Task<bool> RemoveRoleFromUserAsync(Guid userId, Guid roleId);
  Task<bool> CreateRoleAsync(CreateRoleDto dto);
  Task<bool> UpdateRoleAsync(Guid roleId, UpdateRoleDto dto);
  Task<bool> DeleteRoleAsync(Guid roleId);
  Task<bool> AssignPermissionToRoleAsync(Guid roleId, Guid permissionId);
  Task<bool> RemovePermissionFromRoleAsync(Guid roleId, Guid permissionId);
}